What is XML Used For?

XML has created a quite revolution on the Internet.  It is the first truly portable data format that was designed for Internet and multi-language support.  
The number of applications for XML are limitless.  Here are just a 
few of the areas that XML has gained momentum.

Business to Business E-Commerce

This is one of the areas that XML has moved most rapidly.  Getting 
businesses to talk the same data “language” has always been difficult.  
Differences in software and hardware platforms  have always been 
big issues for companies that want to communicate electronically.

XML Vs. EDI

The first initiative to solve this problem was a standard called 
Electronic Data Interchange, or EDI.  While the goals of EDI where 
lofty, the implementation was less than perfect.  For many companies, 
implementing EDI in their processes was not something that yielded 
much in the way of results.  The same issues of differences in hardware 
and software still existed  Differences in data representation between 
organizations was another major hurdle.  Having a standard for content 
modeling that could be interrogated by software was not part of the 
EDI model.  This required that the software that would use the EDI 
output would have to understand its content model inherently.  Each 
company had one or more content models that it would create for 
different things (e.g. purchase orders, proposals, etc.) .  Things got 
real complicated real fast.  A good analogy is that of the telephone.  
The problem with EDI was that each company that wanted to talk to 
each other had to reinvent the telephone for each type of discussion they 
wanted to have.  Needless to say, EDI was not the panacea that many 
envisioned it to be.

XML addresses these issues in the way that it was designed.  It is 
platform independent, it is structured, and it has a mechanism for strict 
content modeling that can be interrogated by any software using a 
standard XML processor.  The result is that companies can communicate 
with each other using XML and engage in business to business 
e-commerce without having to worry about hardware and software 
platform issues, or content modeling issues.  

Many large organizations are now using XML for such things as 
requests for proposals, purchase orders and transaction records to 
name a few.  Since XML is designed for use with Internet protocols, 
the Internet has become the medium for transferring this XML data 
back and forth.  The Internet is becoming the ideal place to do 
business to business e-commerce. 

Catalogs

XML makes the perfect storage and transfer mechanism for 
information such as catalogs.  This includes not only catalogs like 
those used for e-commerce, but also things like parts and inventory.  
Companies can use XML to keep lists of information (catalogs) 
that can be shared and transferred between multiple departments, 
managers, outside vendors, etc.

Data Wherehousing and Archiving

Storing large amounts of information for access by multiple 
applications is known as Data Wherehousing.  XML can be used to 
store such information in usable chunks (documents) that can be 
retrieved from anywhere on the network or Internet, allowing users 
to get the information from anywhere.  This is especially useful 
when sales teams who travel need to get at pertinent information.

Another use of XML is that of data archiving.  A good example 
is the archiving of relational database data.  Relational databases 
are extremely effective at storing and retrieving information (data) 
quickly.  However, lots of infrequently used data can slow them 
down.  Why not store such data in XML documents, leaving only 
the data that is commonly used within the relational database?  
This allows the database server to do what it does best while 
making the older data still available.

Data Migration

Migrating data from one system to another has been the bane 
of application programmers for years.  Developers have often 
resorted to creating custom file formats that can be used to exchange 
data between systems.  The problem however is that each system 
must understand the format of the data if they are going to be able 
to share such information.

XML is the perfect mechanism to be used for data migration.  By 
storing application data in XML, other applications can interrogate 
and query such information using XML’s open standards.  Each 
application needs to know how to read one type of data storage, 
namely XML.  This makes it much easier for application developers 
as they can use XML to export and import data.

A good example of this is migrating data from one database type 
to another (e.g. SQL Server to Oracle).  By outputting the data to 
XML, it can be accessed by an application that knows how to 
process XML and put import the data into the target application 
or software.